iT邦幫忙

0

Hack The Box - Writeup writeup.

  • 分享至 

  • xImage
  •  

前言

Hack The Box 對於其線上題目有嚴格的規定
那就是題目退休以前絕對不能洩漏答案
因此很多writeup都只能等機器退休才能發出來。


首先來到題目頁面:

https://ithelp.ithome.com.tw/upload/images/20191013/20121620Mq5uVX4Pxk.png

先上nmap

nmap -sC -sV -o nmap_writeup.txt 10.10.10.138

https://ithelp.ithome.com.tw/upload/images/20191013/20121620SlAgnX3qDR.png
恩,是個網頁服務
然後有開SSH。

首頁沒有給甚麼資訊,但可以知道有設計防DOS的一些標語,
所以我用gobuster或是等爆破工具都會被BAN掉。
https://ithelp.ithome.com.tw/upload/images/20191013/20121620d3J7eUSr8M.png

接著到nmap結果掃出的10.10.10.138/writeup目錄底下
可以發現此網站也是在記載一些此網站作者的writeup
https://ithelp.ithome.com.tw/upload/images/20191013/20121620DjJ4gYEFGt.png

接著查看網頁原始碼發現此網頁有使用CMS Made Simple服務
這裡推薦一個好用的瀏覽器擴充工具
雖然我自己不太用但是蠻多人推的,叫做wappalyzer
會自動幫你偵測出目前網站使用的web apllication是甚麼,伺服器採用甚麼版本等等。
如下圖
https://ithelp.ithome.com.tw/upload/images/20191013/20121620njjFJEKRd9.png

好的那我們回到CMS Made Simple。
甚麼是CMS Made Simple ?
可以參考維基百科:https://zh.wikipedia.org/wiki/CMS_Made_Simple
接著我們來找找看有沒有相關開源服務的漏洞利用在exploit.db上吧
但是首先我們亂槍打鳥之前,更好的方式是先確認在伺服器上使用的CMS版本
要如何確認版本?
這是CMD Made Simple的官網:https://www.cmsmadesimple.org/downloads/cmsms/
接著我們來到Download page底下有這麼幾行字:
https://ithelp.ithome.com.tw/upload/images/20191013/20121620ps8x86SA3b.png
有提供我們查找版本的目錄路徑
(如果其他種服務沒有這種貼心提醒的話,你可以考慮直接裝一個服務查看版本路徑會設在哪XD)
我們到此網址下的/doc/目錄的CHANGELOG.txt發現很關鍵的訊息
https://ithelp.ithome.com.tw/upload/images/20191013/20121620zkEzjDeume.png
因此我們如法炮製,到10.10.10.138/writeup/doc/CHANGELOG.txt查看
果然找到了此伺服器上的CMS版本為:Version 2.2.9.1
https://ithelp.ithome.com.tw/upload/images/20191013/201216203nqMb1ngHZ.png
有了版本之後我們到exploit.db看有沒有可以利用的漏洞吧
https://ithelp.ithome.com.tw/upload/images/20191013/20121620gfYK8xBoFd.png
OK發現到最新的一個漏洞:CMS Made Simple < 2.2.10 - SQL Injection
版本是2.2.10,大於2.2.9.1,所以理論上伺服器上的版本是有此弱點的。
漏洞利用網址:https://www.exploit-db.com/exploits/46635


Exploit CMS Made Simple - Version 2.2.9.1

在這邊小編由於慘痛的教訓在此跟大家強烈建議
由於此網站設計有防DOS,如果你用預設的TIME間隔會不穩定
尤其是此漏洞又是根據TIME BASED來測試的,所以我建議TIME選項可以設成3以上
不然你會懷疑人生。
接著預設選項會一次把salt,username,email,跟password一次跑完
我也建議可以先把其他註解掉一個一個選項慢慢來
像這樣:
https://ithelp.ithome.com.tw/upload/images/20191013/201216207DBQzabAVt.png
然後把測完的數值放到exploit裡面的變數,這樣會穩定很多。
此漏洞編號為CVE-2019-9053:
這篇漏洞解析跟實作的不錯,強烈建議一定要看
https://www.freebuf.com/vuls/207026.html
不然跑跑別人的exploit不覺得空虛嗎。
總的來說就是如果猜到了數值(為True),觸發sleep(秒數)函數並暫停幾秒,
就表示你有猜到數值。
漏洞參數為:http://x.x.x.x/cmsms/moduleinterface.php?mact=News,m1_,default,0&m1_idlist=
payload: 0,1,2))+and+(select+sleep(" + str(sleep_time) + ")+from+cms_siteprefs+where+sitepref_value+like+0x" + ord_salt_temp + "25+and+sitepref_name+like+0x736974656d61736b)+--+

下面是我跑完的整體結果,別忘了選項-c加上來破猜hash,雖然我覺得對於現實世界來講有點不實際
但總之在這裡是可行的,也是設計好給你的。
https://ithelp.ithome.com.tw/upload/images/20191013/20121620ZHtval1LOn.png


User Shell

在拿到Creds之後,我有去10.10.10.138/writeup/admin嘗試登入,並沒有用
接著拿去測試SSH就可以拿到User Shell了。
https://ithelp.ithome.com.tw/upload/images/20191013/20121620cuGmt0r4fz.png


Root Shell

我在這裡卡了一陣子,學到一招新招,應該說很多人拿到User Shell都會做這件事只是我不知道XD
我們上傳一款名為pspy64的檔案到User Shell
這裡是此檔的github,對於用途用法都有詳細說明就不再多做介紹。
https://github.com/DominicBreuker/pspy
接著請仔細觀察上面發生甚麼事
看下來你會發現到
有幾行奇怪的cron job會一直出現
https://ithelp.ithome.com.tw/upload/images/20191013/20121620VyVbZoNcm4.png
但是時間也不固定,所以到底是甚麼情況會觸發此cron job ?
之後發現到了只要有用戶登入伺服器,就會觸發此cron job。

喔,所以呢,這可以吃嗎?

這裡要帶入一個非常重要的提權概念
叫做Linux Privilege Escalation Using PATH Variable
詳細的實作實驗與講解我考慮另發一篇
但大家可以先閱讀下面這篇的講解。
https://www.hackingarticles.in/linux-privilege-escalation-using-path-variable/
有了這個概念後我們回到剛剛的登入觸發排程
我們可以發現執行run-parts時,cron job並沒有指定絕對路徑
那代表甚麼?
代表在執行run-parts時系統會根據前面的PATH變數
/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
順序來查找此程式
如果有此程式便會執行
那壞壞的你想到了,如果我在前面這些路徑就先寫名為run-parts的revershell的話
那系統不就會乖乖的執行了嗎?
而且執行者還是root本身!
因此首先我們瞄準第一個變數 -> /usr/local/sbin
來到此目錄底下利用vi創建一個reverse_shell
接著把此檔案加上jkr可以執行的權限
https://ithelp.ithome.com.tw/upload/images/20191013/201216202m0LYiG7La.png
接著另外開終端登入ssh,觸發cron job排程
https://ithelp.ithome.com.tw/upload/images/20191013/20121620t5JYRLzdII.png
接著你應該就可以拿到root了
https://ithelp.ithome.com.tw/upload/images/20191013/20121620BmJuG8QpxD.png


結語

整體算是簡單的BOX,只是中間pspy那邊真的是完全沒頭緒,也是問了好多網友的幫忙
但由於嚴格的暴雷限制,因此你會不斷地跟人討論與思考
能讓自己進步的很健康
目前也有做完其他Box了,希望能等其退休後我就可以發文了XD

更多文章:https://ithelp.ithome.com.tw/users/20121620/articles


圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言